"""Common schemas used across the application."""

from __future__ import annotations

from typing import List
from pydantic import BaseModel


class BulkDeleteRequest(BaseModel):
    """Request schema for bulk delete operations."""

    ids: List[str]
    # Support for specific entity types
    property_ids: List[str] | None = None
    lead_ids: List[str] | None = None


class BulkOperationResponse(BaseModel):
    """Response schema for bulk operations."""

    success: bool
    message: str
    processed_count: int
    failed_count: int = 0
    failed_ids: List[str] = []
    # Additional fields for compatibility
    failed: int = 0
    not_found: int = 0
